
a.out:     file format elf64-x86-64


Disassembly of section .init:

0000000000001000 <_init>:
    1000:	f3 0f 1e fa          	endbr64
    1004:	48 83 ec 08          	sub    $0x8,%rsp
    1008:	48 8b 05 d9 2f 00 00 	mov    0x2fd9(%rip),%rax        # 3fe8 <__gmon_start__@Base>
    100f:	48 85 c0             	test   %rax,%rax
    1012:	74 02                	je     1016 <_init+0x16>
    1014:	ff d0                	call   *%rax
    1016:	48 83 c4 08          	add    $0x8,%rsp
    101a:	c3                   	ret

Disassembly of section .plt:

0000000000001020 <.plt>:
    1020:	ff 35 5a 2f 00 00    	push   0x2f5a(%rip)        # 3f80 <_GLOBAL_OFFSET_TABLE_+0x8>
    1026:	ff 25 5c 2f 00 00    	jmp    *0x2f5c(%rip)        # 3f88 <_GLOBAL_OFFSET_TABLE_+0x10>
    102c:	0f 1f 40 00          	nopl   0x0(%rax)
    1030:	f3 0f 1e fa          	endbr64
    1034:	68 00 00 00 00       	push   $0x0
    1039:	e9 e2 ff ff ff       	jmp    1020 <_init+0x20>
    103e:	66 90                	xchg   %ax,%ax
    1040:	f3 0f 1e fa          	endbr64
    1044:	68 01 00 00 00       	push   $0x1
    1049:	e9 d2 ff ff ff       	jmp    1020 <_init+0x20>
    104e:	66 90                	xchg   %ax,%ax
    1050:	f3 0f 1e fa          	endbr64
    1054:	68 02 00 00 00       	push   $0x2
    1059:	e9 c2 ff ff ff       	jmp    1020 <_init+0x20>
    105e:	66 90                	xchg   %ax,%ax
    1060:	f3 0f 1e fa          	endbr64
    1064:	68 03 00 00 00       	push   $0x3
    1069:	e9 b2 ff ff ff       	jmp    1020 <_init+0x20>
    106e:	66 90                	xchg   %ax,%ax
    1070:	f3 0f 1e fa          	endbr64
    1074:	68 04 00 00 00       	push   $0x4
    1079:	e9 a2 ff ff ff       	jmp    1020 <_init+0x20>
    107e:	66 90                	xchg   %ax,%ax
    1080:	f3 0f 1e fa          	endbr64
    1084:	68 05 00 00 00       	push   $0x5
    1089:	e9 92 ff ff ff       	jmp    1020 <_init+0x20>
    108e:	66 90                	xchg   %ax,%ax
    1090:	f3 0f 1e fa          	endbr64
    1094:	68 06 00 00 00       	push   $0x6
    1099:	e9 82 ff ff ff       	jmp    1020 <_init+0x20>
    109e:	66 90                	xchg   %ax,%ax
    10a0:	f3 0f 1e fa          	endbr64
    10a4:	68 07 00 00 00       	push   $0x7
    10a9:	e9 72 ff ff ff       	jmp    1020 <_init+0x20>
    10ae:	66 90                	xchg   %ax,%ax
    10b0:	f3 0f 1e fa          	endbr64
    10b4:	68 08 00 00 00       	push   $0x8
    10b9:	e9 62 ff ff ff       	jmp    1020 <_init+0x20>
    10be:	66 90                	xchg   %ax,%ax

Disassembly of section .plt.got:

00000000000010c0 <__cxa_finalize@plt>:
    10c0:	f3 0f 1e fa          	endbr64
    10c4:	ff 25 2e 2f 00 00    	jmp    *0x2f2e(%rip)        # 3ff8 <__cxa_finalize@GLIBC_2.2.5>
    10ca:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

Disassembly of section .plt.sec:

00000000000010d0 <write@plt>:
    10d0:	f3 0f 1e fa          	endbr64
    10d4:	ff 25 b6 2e 00 00    	jmp    *0x2eb6(%rip)        # 3f90 <write@GLIBC_2.2.5>
    10da:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

00000000000010e0 <strlen@plt>:
    10e0:	f3 0f 1e fa          	endbr64
    10e4:	ff 25 ae 2e 00 00    	jmp    *0x2eae(%rip)        # 3f98 <strlen@GLIBC_2.2.5>
    10ea:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

00000000000010f0 <__stack_chk_fail@plt>:
    10f0:	f3 0f 1e fa          	endbr64
    10f4:	ff 25 a6 2e 00 00    	jmp    *0x2ea6(%rip)        # 3fa0 <__stack_chk_fail@GLIBC_2.4>
    10fa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001100 <close@plt>:
    1100:	f3 0f 1e fa          	endbr64
    1104:	ff 25 9e 2e 00 00    	jmp    *0x2e9e(%rip)        # 3fa8 <close@GLIBC_2.2.5>
    110a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001110 <strcmp@plt>:
    1110:	f3 0f 1e fa          	endbr64
    1114:	ff 25 96 2e 00 00    	jmp    *0x2e96(%rip)        # 3fb0 <strcmp@GLIBC_2.2.5>
    111a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001120 <memcpy@plt>:
    1120:	f3 0f 1e fa          	endbr64
    1124:	ff 25 8e 2e 00 00    	jmp    *0x2e8e(%rip)        # 3fb8 <memcpy@GLIBC_2.14>
    112a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001130 <malloc@plt>:
    1130:	f3 0f 1e fa          	endbr64
    1134:	ff 25 86 2e 00 00    	jmp    *0x2e86(%rip)        # 3fc0 <malloc@GLIBC_2.2.5>
    113a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001140 <open@plt>:
    1140:	f3 0f 1e fa          	endbr64
    1144:	ff 25 7e 2e 00 00    	jmp    *0x2e7e(%rip)        # 3fc8 <open@GLIBC_2.2.5>
    114a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001150 <perror@plt>:
    1150:	f3 0f 1e fa          	endbr64
    1154:	ff 25 76 2e 00 00    	jmp    *0x2e76(%rip)        # 3fd0 <perror@GLIBC_2.2.5>
    115a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

Disassembly of section .text:

0000000000001160 <_start>:
    1160:	f3 0f 1e fa          	endbr64
    1164:	31 ed                	xor    %ebp,%ebp
    1166:	49 89 d1             	mov    %rdx,%r9
    1169:	5e                   	pop    %rsi
    116a:	48 89 e2             	mov    %rsp,%rdx
    116d:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
    1171:	50                   	push   %rax
    1172:	54                   	push   %rsp
    1173:	45 31 c0             	xor    %r8d,%r8d
    1176:	31 c9                	xor    %ecx,%ecx
    1178:	48 8d 3d ca 00 00 00 	lea    0xca(%rip),%rdi        # 1249 <main>
    117f:	ff 15 53 2e 00 00    	call   *0x2e53(%rip)        # 3fd8 <__libc_start_main@GLIBC_2.34>
    1185:	f4                   	hlt
    1186:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
    118d:	00 00 00 

0000000000001190 <deregister_tm_clones>:
    1190:	48 8d 3d 79 2e 00 00 	lea    0x2e79(%rip),%rdi        # 4010 <__TMC_END__>
    1197:	48 8d 05 72 2e 00 00 	lea    0x2e72(%rip),%rax        # 4010 <__TMC_END__>
    119e:	48 39 f8             	cmp    %rdi,%rax
    11a1:	74 15                	je     11b8 <deregister_tm_clones+0x28>
    11a3:	48 8b 05 36 2e 00 00 	mov    0x2e36(%rip),%rax        # 3fe0 <_ITM_deregisterTMCloneTable@Base>
    11aa:	48 85 c0             	test   %rax,%rax
    11ad:	74 09                	je     11b8 <deregister_tm_clones+0x28>
    11af:	ff e0                	jmp    *%rax
    11b1:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    11b8:	c3                   	ret
    11b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011c0 <register_tm_clones>:
    11c0:	48 8d 3d 49 2e 00 00 	lea    0x2e49(%rip),%rdi        # 4010 <__TMC_END__>
    11c7:	48 8d 35 42 2e 00 00 	lea    0x2e42(%rip),%rsi        # 4010 <__TMC_END__>
    11ce:	48 29 fe             	sub    %rdi,%rsi
    11d1:	48 89 f0             	mov    %rsi,%rax
    11d4:	48 c1 ee 3f          	shr    $0x3f,%rsi
    11d8:	48 c1 f8 03          	sar    $0x3,%rax
    11dc:	48 01 c6             	add    %rax,%rsi
    11df:	48 d1 fe             	sar    $1,%rsi
    11e2:	74 14                	je     11f8 <register_tm_clones+0x38>
    11e4:	48 8b 05 05 2e 00 00 	mov    0x2e05(%rip),%rax        # 3ff0 <_ITM_registerTMCloneTable@Base>
    11eb:	48 85 c0             	test   %rax,%rax
    11ee:	74 08                	je     11f8 <register_tm_clones+0x38>
    11f0:	ff e0                	jmp    *%rax
    11f2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
    11f8:	c3                   	ret
    11f9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001200 <__do_global_dtors_aux>:
    1200:	f3 0f 1e fa          	endbr64
    1204:	80 3d 05 2e 00 00 00 	cmpb   $0x0,0x2e05(%rip)        # 4010 <__TMC_END__>
    120b:	75 2b                	jne    1238 <__do_global_dtors_aux+0x38>
    120d:	55                   	push   %rbp
    120e:	48 83 3d e2 2d 00 00 	cmpq   $0x0,0x2de2(%rip)        # 3ff8 <__cxa_finalize@GLIBC_2.2.5>
    1215:	00 
    1216:	48 89 e5             	mov    %rsp,%rbp
    1219:	74 0c                	je     1227 <__do_global_dtors_aux+0x27>
    121b:	48 8b 3d e6 2d 00 00 	mov    0x2de6(%rip),%rdi        # 4008 <__dso_handle>
    1222:	e8 99 fe ff ff       	call   10c0 <__cxa_finalize@plt>
    1227:	e8 64 ff ff ff       	call   1190 <deregister_tm_clones>
    122c:	c6 05 dd 2d 00 00 01 	movb   $0x1,0x2ddd(%rip)        # 4010 <__TMC_END__>
    1233:	5d                   	pop    %rbp
    1234:	c3                   	ret
    1235:	0f 1f 00             	nopl   (%rax)
    1238:	c3                   	ret
    1239:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001240 <frame_dummy>:
    1240:	f3 0f 1e fa          	endbr64
    1244:	e9 77 ff ff ff       	jmp    11c0 <register_tm_clones>

0000000000001249 <main>:
    1249:	f3 0f 1e fa          	endbr64
    124d:	55                   	push   %rbp
    124e:	48 89 e5             	mov    %rsp,%rbp
    1251:	48 83 ec 40          	sub    $0x40,%rsp
    1255:	64 48 8b 04 25 28 00 	mov    %fs:0x28,%rax
    125c:	00 00 
    125e:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1262:	31 c0                	xor    %eax,%eax
    1264:	48 8d 05 99 0d 00 00 	lea    0xd99(%rip),%rax        # 2004 <_IO_stdin_used+0x4>
    126b:	48 89 c6             	mov    %rax,%rsi
    126e:	48 8d 05 91 0d 00 00 	lea    0xd91(%rip),%rax        # 2006 <_IO_stdin_used+0x6>
    1275:	48 89 c7             	mov    %rax,%rdi
    1278:	e8 99 00 00 00       	call   1316 <mfopen>
    127d:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
    1281:	48 83 7d c8 00       	cmpq   $0x0,-0x38(%rbp)
    1286:	75 0f                	jne    1297 <main+0x4e>
    1288:	48 8d 05 7f 0d 00 00 	lea    0xd7f(%rip),%rax        # 200e <_IO_stdin_used+0xe>
    128f:	48 89 c7             	mov    %rax,%rdi
    1292:	e8 b9 fe ff ff       	call   1150 <perror@plt>
    1297:	48 b8 68 65 6c 6c 6f 	movabs $0x6f77206f6c6c6568,%rax
    129e:	20 77 6f 
    12a1:	ba 72 6c 64 0a       	mov    $0xa646c72,%edx
    12a6:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
    12aa:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    12ae:	48 c7 45 de 00 00 00 	movq   $0x0,-0x22(%rbp)
    12b5:	00 
    12b6:	48 c7 45 e6 00 00 00 	movq   $0x0,-0x1a(%rbp)
    12bd:	00 
    12be:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12c2:	48 89 c7             	mov    %rax,%rdi
    12c5:	e8 c5 02 00 00       	call   158f <my_strlen>
    12ca:	89 c1                	mov    %eax,%ecx
    12cc:	48 8b 55 c8          	mov    -0x38(%rbp),%rdx
    12d0:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12d4:	89 ce                	mov    %ecx,%esi
    12d6:	48 89 c7             	mov    %rax,%rdi
    12d9:	e8 8a 01 00 00       	call   1468 <mfwrite>
    12de:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12e2:	48 89 c7             	mov    %rax,%rdi
    12e5:	e8 f6 fd ff ff       	call   10e0 <strlen@plt>
    12ea:	c6 44 05 d0 00       	movb   $0x0,-0x30(%rbp,%rax,1)
    12ef:	48 8b 45 c8          	mov    -0x38(%rbp),%rax
    12f3:	48 89 c7             	mov    %rax,%rdi
    12f6:	e8 55 02 00 00       	call   1550 <mfclose>
    12fb:	b8 00 00 00 00       	mov    $0x0,%eax
    1300:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    1304:	64 48 2b 14 25 28 00 	sub    %fs:0x28,%rdx
    130b:	00 00 
    130d:	74 05                	je     1314 <main+0xcb>
    130f:	e8 dc fd ff ff       	call   10f0 <__stack_chk_fail@plt>
    1314:	c9                   	leave
    1315:	c3                   	ret

0000000000001316 <mfopen>:
    1316:	f3 0f 1e fa          	endbr64
    131a:	55                   	push   %rbp
    131b:	48 89 e5             	mov    %rsp,%rbp
    131e:	48 83 ec 30          	sub    $0x30,%rsp
    1322:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    1326:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
    132a:	bf 10 04 00 00       	mov    $0x410,%edi
    132f:	e8 fc fd ff ff       	call   1130 <malloc@plt>
    1334:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1338:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    133d:	75 0a                	jne    1349 <mfopen+0x33>
    133f:	b8 00 00 00 00       	mov    $0x0,%eax
    1344:	e9 1d 01 00 00       	jmp    1466 <mfopen+0x150>
    1349:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
    134d:	48 8d 15 c4 0c 00 00 	lea    0xcc4(%rip),%rdx        # 2018 <basesize+0x4>
    1354:	48 89 d6             	mov    %rdx,%rsi
    1357:	48 89 c7             	mov    %rax,%rdi
    135a:	e8 b1 fd ff ff       	call   1110 <strcmp@plt>
    135f:	85 c0                	test   %eax,%eax
    1361:	75 3c                	jne    139f <mfopen+0x89>
    1363:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1367:	ba b6 01 00 00       	mov    $0x1b6,%edx
    136c:	be 41 02 00 00       	mov    $0x241,%esi
    1371:	48 89 c7             	mov    %rax,%rdi
    1374:	b8 00 00 00 00       	mov    $0x0,%eax
    1379:	e8 c2 fd ff ff       	call   1140 <open@plt>
    137e:	89 45 f4             	mov    %eax,-0xc(%rbp)
    1381:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    1385:	79 0a                	jns    1391 <mfopen+0x7b>
    1387:	b8 00 00 00 00       	mov    $0x0,%eax
    138c:	e9 d5 00 00 00       	jmp    1466 <mfopen+0x150>
    1391:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1395:	8b 55 f4             	mov    -0xc(%rbp),%edx
    1398:	89 10                	mov    %edx,(%rax)
    139a:	e9 9c 00 00 00       	jmp    143b <mfopen+0x125>
    139f:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
    13a3:	48 8d 15 70 0c 00 00 	lea    0xc70(%rip),%rdx        # 201a <basesize+0x6>
    13aa:	48 89 d6             	mov    %rdx,%rsi
    13ad:	48 89 c7             	mov    %rax,%rdi
    13b0:	e8 5b fd ff ff       	call   1110 <strcmp@plt>
    13b5:	85 c0                	test   %eax,%eax
    13b7:	75 34                	jne    13ed <mfopen+0xd7>
    13b9:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    13bd:	be 00 00 00 00       	mov    $0x0,%esi
    13c2:	48 89 c7             	mov    %rax,%rdi
    13c5:	b8 00 00 00 00       	mov    $0x0,%eax
    13ca:	e8 71 fd ff ff       	call   1140 <open@plt>
    13cf:	89 45 f0             	mov    %eax,-0x10(%rbp)
    13d2:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    13d6:	79 0a                	jns    13e2 <mfopen+0xcc>
    13d8:	b8 00 00 00 00       	mov    $0x0,%eax
    13dd:	e9 84 00 00 00       	jmp    1466 <mfopen+0x150>
    13e2:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    13e6:	8b 55 f0             	mov    -0x10(%rbp),%edx
    13e9:	89 10                	mov    %edx,(%rax)
    13eb:	eb 4e                	jmp    143b <mfopen+0x125>
    13ed:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
    13f1:	48 8d 15 24 0c 00 00 	lea    0xc24(%rip),%rdx        # 201c <basesize+0x8>
    13f8:	48 89 d6             	mov    %rdx,%rsi
    13fb:	48 89 c7             	mov    %rax,%rdi
    13fe:	e8 0d fd ff ff       	call   1110 <strcmp@plt>
    1403:	85 c0                	test   %eax,%eax
    1405:	75 34                	jne    143b <mfopen+0x125>
    1407:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    140b:	ba b6 01 00 00       	mov    $0x1b6,%edx
    1410:	be 40 06 00 00       	mov    $0x640,%esi
    1415:	48 89 c7             	mov    %rax,%rdi
    1418:	b8 00 00 00 00       	mov    $0x0,%eax
    141d:	e8 1e fd ff ff       	call   1140 <open@plt>
    1422:	89 45 ec             	mov    %eax,-0x14(%rbp)
    1425:	83 7d ec 00          	cmpl   $0x0,-0x14(%rbp)
    1429:	79 07                	jns    1432 <mfopen+0x11c>
    142b:	b8 00 00 00 00       	mov    $0x0,%eax
    1430:	eb 34                	jmp    1466 <mfopen+0x150>
    1432:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1436:	8b 55 ec             	mov    -0x14(%rbp),%edx
    1439:	89 10                	mov    %edx,(%rax)
    143b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    143f:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%rax)
    1446:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    144a:	c7 80 08 04 00 00 00 	movl   $0x0,0x408(%rax)
    1451:	00 00 00 
    1454:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1458:	c7 80 0c 04 00 00 00 	movl   $0x400,0x40c(%rax)
    145f:	04 00 00 
    1462:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1466:	c9                   	leave
    1467:	c3                   	ret

0000000000001468 <mfwrite>:
    1468:	f3 0f 1e fa          	endbr64
    146c:	55                   	push   %rbp
    146d:	48 89 e5             	mov    %rsp,%rbp
    1470:	48 83 ec 20          	sub    $0x20,%rsp
    1474:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1478:	89 75 f4             	mov    %esi,-0xc(%rbp)
    147b:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
    147f:	8b 45 f4             	mov    -0xc(%rbp),%eax
    1482:	48 63 d0             	movslq %eax,%rdx
    1485:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1489:	48 8d 48 08          	lea    0x8(%rax),%rcx
    148d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1491:	8b 80 08 04 00 00    	mov    0x408(%rax),%eax
    1497:	48 98                	cltq
    1499:	48 01 c1             	add    %rax,%rcx
    149c:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    14a0:	48 89 c6             	mov    %rax,%rsi
    14a3:	48 89 cf             	mov    %rcx,%rdi
    14a6:	e8 75 fc ff ff       	call   1120 <memcpy@plt>
    14ab:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14af:	8b 90 08 04 00 00    	mov    0x408(%rax),%edx
    14b5:	8b 45 f4             	mov    -0xc(%rbp),%eax
    14b8:	01 c2                	add    %eax,%edx
    14ba:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14be:	89 90 08 04 00 00    	mov    %edx,0x408(%rax)
    14c4:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14c8:	8b 40 04             	mov    0x4(%rax),%eax
    14cb:	85 c0                	test   %eax,%eax
    14cd:	75 36                	jne    1505 <mfwrite+0x9d>
    14cf:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14d3:	8b 80 08 04 00 00    	mov    0x408(%rax),%eax
    14d9:	85 c0                	test   %eax,%eax
    14db:	7e 28                	jle    1505 <mfwrite+0x9d>
    14dd:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14e1:	8b 80 08 04 00 00    	mov    0x408(%rax),%eax
    14e7:	83 e8 01             	sub    $0x1,%eax
    14ea:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    14ee:	48 98                	cltq
    14f0:	0f b6 44 02 08       	movzbl 0x8(%rdx,%rax,1),%eax
    14f5:	3c 0a                	cmp    $0xa,%al
    14f7:	75 0c                	jne    1505 <mfwrite+0x9d>
    14f9:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14fd:	48 89 c7             	mov    %rax,%rdi
    1500:	e8 05 00 00 00       	call   150a <mfflush>
    1505:	8b 45 f4             	mov    -0xc(%rbp),%eax
    1508:	c9                   	leave
    1509:	c3                   	ret

000000000000150a <mfflush>:
    150a:	f3 0f 1e fa          	endbr64
    150e:	55                   	push   %rbp
    150f:	48 89 e5             	mov    %rsp,%rbp
    1512:	48 83 ec 10          	sub    $0x10,%rsp
    1516:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    151a:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    151e:	8b 80 08 04 00 00    	mov    0x408(%rax),%eax
    1524:	48 63 d0             	movslq %eax,%rdx
    1527:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    152b:	48 8d 48 08          	lea    0x8(%rax),%rcx
    152f:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1533:	8b 00                	mov    (%rax),%eax
    1535:	48 89 ce             	mov    %rcx,%rsi
    1538:	89 c7                	mov    %eax,%edi
    153a:	e8 91 fb ff ff       	call   10d0 <write@plt>
    153f:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1543:	c7 80 08 04 00 00 00 	movl   $0x0,0x408(%rax)
    154a:	00 00 00 
    154d:	90                   	nop
    154e:	c9                   	leave
    154f:	c3                   	ret

0000000000001550 <mfclose>:
    1550:	f3 0f 1e fa          	endbr64
    1554:	55                   	push   %rbp
    1555:	48 89 e5             	mov    %rsp,%rbp
    1558:	48 83 ec 20          	sub    $0x20,%rsp
    155c:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    1560:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1564:	8b 80 08 04 00 00    	mov    0x408(%rax),%eax
    156a:	85 c0                	test   %eax,%eax
    156c:	7e 0c                	jle    157a <mfclose+0x2a>
    156e:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1572:	48 89 c7             	mov    %rax,%rdi
    1575:	e8 90 ff ff ff       	call   150a <mfflush>
    157a:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    157e:	8b 00                	mov    (%rax),%eax
    1580:	89 c7                	mov    %eax,%edi
    1582:	e8 79 fb ff ff       	call   1100 <close@plt>
    1587:	89 45 fc             	mov    %eax,-0x4(%rbp)
    158a:	8b 45 fc             	mov    -0x4(%rbp),%eax
    158d:	c9                   	leave
    158e:	c3                   	ret

000000000000158f <my_strlen>:
    158f:	f3 0f 1e fa          	endbr64
    1593:	55                   	push   %rbp
    1594:	48 89 e5             	mov    %rsp,%rbp
    1597:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    159b:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    159f:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    15a3:	90                   	nop
    15a4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15a8:	48 8d 50 01          	lea    0x1(%rax),%rdx
    15ac:	48 89 55 f8          	mov    %rdx,-0x8(%rbp)
    15b0:	0f b6 00             	movzbl (%rax),%eax
    15b3:	84 c0                	test   %al,%al
    15b5:	75 ed                	jne    15a4 <my_strlen+0x15>
    15b7:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15bb:	48 2b 45 e8          	sub    -0x18(%rbp),%rax
    15bf:	5d                   	pop    %rbp
    15c0:	c3                   	ret

Disassembly of section .fini:

00000000000015c4 <_fini>:
    15c4:	f3 0f 1e fa          	endbr64
    15c8:	48 83 ec 08          	sub    $0x8,%rsp
    15cc:	48 83 c4 08          	add    $0x8,%rsp
    15d0:	c3                   	ret
